home *** CD-ROM | disk | FTP | other *** search
/ The Business Master (4th Edition) / The Business Master - 4th Edition.iso / files / utilreen / vmix / revision.log < prev    next >
Text File  |  1993-09-17  |  45KB  |  971 lines

  1.                                                   _______
  2.                                              ____|__     |               (tm)
  3.                                           --|       |    |-------------------
  4.                                             |   ____|__  |  Association of
  5.                tm                           |  |       |_|  Shareware
  6.        VMiX 386   Version 2.90              |__|   o   |    Professionals
  7.        -----------------------            -----|   |   |---------------------
  8.                                                |___|___|    MEMBER
  9.  
  10.        Copyright (c) 1985-1993
  11.  
  12.      Commercial Software Associates
  13.           Post Office Box  36
  14.     Corona del Mar, California  92625
  15.  
  16.    BBS     (714)  720-1139 (24 Hrs.)
  17.    VOICE   (714)  720-1214 (8 - 6pm PST)
  18.  
  19.  
  20.        Release of September 17, 1993
  21.  
  22.  
  23. 1.  Terminal displays now operate faster, when running apps that write
  24.     directly to the screen.  You must set the terminal in ANSI mode,
  25.     and set the VMiX side to either terminal type 5 (ANSI for color
  26.     support - slower) or terminal type 4 (VT-100 monochrome - much
  27.     faster).
  28.  
  29.     The terminal driver only refreshes, via the serial port, locations in
  30.     the application's virtual screen that have changed.
  31.  
  32. 2.  The terminal driver, now fully mimics a keyboard interrupt (INT 09h).
  33.     Programs that install their own keyboard (like QBasic) will now work
  34.     correctly, since their driver is now also called before the terminal
  35.     driver.
  36.  
  37.     From a terminal, the key combinations: Ctrl-S (wait), Ctrl-C (abort),
  38.     or Ctrl-F (toggle IBM keyboard emulation), are now preemptive.
  39.     This means that they will preempt other characters in the typeahead
  40.     buffer and be sent to the application immediately, just as from the PC's
  41.     keyboard.
  42.  
  43. 3.  COM3 and COM4 are now supported at baud rates above 9600 (interrupt
  44.     driven modes).  Previously only COM1 and COM2 were supported at
  45.     high baud rates.
  46.  
  47. 4.  Commercial version now supports up to 5 megabytes of extended memory.
  48.     Increased the size of the paged memory pool.
  49.  
  50. 5.  QBASIC now works correctly with VMiX (including multiple copies).
  51.  
  52. 6.  The command 'assign' has been modified to accept two new keywords:
  53.     'CHANNEL' and 'ALTCHANNEL'.  ('assign 1 CHANNEL 2' or 'assign 1 2',
  54.     would assign the existing channel 2, for all I/O kbd & console, to
  55.     process 1) and (assign 1 ALTCHANNEL 2, would assign the existing
  56.     channel 2 as a secondary channel, usually for COMM port access, to
  57.     process 1).
  58.  
  59.     The commercial version now has a command to assign the virtual
  60.     memory resources of one process to another.  (assign 1 MEMORY 2,
  61.     would assign to process 1 the virtual display and memory resources
  62.     of process 2, but not the keyboard; process 1 would see what process
  63.     2 is running and process 1 could type or execute someting that would
  64.     be seen on process' 2 display).
  65.  
  66.  
  67. VMiX Release 2.89 Notes
  68. -----------------------
  69.  
  70. 1. The DOS 6.0 kernel is almost identical to the DOS 5.0 kernel, however
  71.    VMiX was identifying DOS 6.0 as DOS 3.3 and hanging.  It now identifies
  72.    DOS 6.0 correctly.
  73.  
  74. 2. VMiX now loads and processes the VMiX.INI file automatically, if found.
  75.    Do not start VMiX with the command line: VM_BOOT vsetup,
  76.    which was needed with older VMiX versions, to process the .INI file.
  77.  
  78. 3. Added support for network or communications drivers that use interrupt
  79.    request line #7 (normally LPT1 device).  This support is tied to the
  80.    VMiX assigned channel 5, which is usually the first printer (use
  81.    'DSTAT.EXE -a' command to see the channels.  The support is automatic
  82.    and VMiX should assign channel 5 to a task that initializes the
  83.    interrupt by generating an interrupt.  When a network driver installs
  84.    itself on IRQ #7, VMiX will virtualize and service interrupts for that
  85.    driver regardless of the currently executing virtual machine (VM).
  86.  
  87.    To manually assure that the task that loaded the interrupt service is
  88.    the owner of the channel, you can use the 'assign . 5' command in a
  89.    VMiX.INI script or from the task's command line.  The '.' is an alias
  90.    for the process ID (PID) of the current task, you could substitute the
  91.    PID # of the task you wish to assign channel 5 to.  This command can be
  92.    issued at any time, before or after loading the driver for an adapter
  93.    that uses IRQ #7.
  94.  
  95.    This feature virtualizes IRQ #7, just like IRQ #3 & #4 were virtualized
  96.    for the COMM ports.  When hardware interrupts arrive for those devices,
  97.    they will not lose data when the active task in memory is not the owner
  98.    task of the driver.  VMiX will service the interrupt in the context of
  99.    the channel owner for IRQ #7 and switch back to the task that owned the
  100.    cpu at the time of the hardware interrupt.
  101.  
  102. 4. Made changes to VW so that it will display better, when using the new
  103.    /quiet VM_BOOT system option.
  104.  
  105. 5. Fixed some bugs when switching virtual screens between an application
  106.    running in graphics mode and one running in text mode.  The current
  107.    video size (total lines on a virtual screen) is now task dependent.
  108.    Graphics screens can have more lines than the 25 used by text screens,
  109.    and it was screwing up text screens when you Shift-Tabbed between them.
  110.  
  111. 6. Fixed processing of VMiX.INI so that it works better and will now loadup
  112.    vm_boot.exe correctly.  Previously, you could only loadup VMiX succesfully
  113.    from the command line.  Fixed a bug with loadup which was not allowing
  114.    reuse of a freed upper memory block by a new TSR to load up.
  115.  
  116. 7. Bug fixes to virtual screen management, when both text and graphics
  117.    virtual screens are active.  Made fixes to the status line event
  118.    update routine which was causing screen interferance.
  119.  
  120. 8. VW.EXE had stopped working in graphics modes, fixed.
  121.  
  122. 9. The 2 startup options, 'egacur' and 'cgacur' are no longer needed to
  123.    fix a cursor display bug and have been removed.
  124.  
  125.  
  126. VMiX Release 2.81 Notes
  127. -----------------------
  128.  
  129. 1. Added additional support for SCSI disk drives.  Double buffering is needed
  130.    for correct operation of the SCSI drive DMA.  When in protected double
  131.    buffering mode, is now activated if a SCSI BIOS is detected.
  132.    Additionally, double buffering can be toggled ON/OFF with the new VMiX
  133.    command 'set pool -d'.
  134.  
  135. 2. Fixed a bug in Version 2.80 that caused a second task always to crash.
  136.  
  137. 3. Added a new command line switch for starting VM_BOOT.EXE, /quiet, that
  138.    disables VMiX's normal user interface and substitutes a modified DOS
  139.    prompt that keeps all the VMiX commands, but looks more like plain DOS.
  140.  
  141.    The /QUIET or /q option is just a look and feel option that disables
  142.    all start-up messages, normally printed during boot, and makes the
  143.    'look and feel' more like booting a multiuser and multitasking version
  144.    of plain DOS.
  145.  
  146. 4. The DOS prompt line of a second concurrent DOS task will now display
  147.    the process ID, PID, for that task, along with the default drive and
  148.    path prompt.  The process ID is only inserted on the prompt line of
  149.    tasks at the console and not at user terminals or call-in users.
  150.  
  151. 5. When loading VM_BOOT.EXE to upper memory with the LOADUP.EXE utility,
  152.    the arguments after the second VM_BOOT will now be processed by the
  153.    VMiX that is loaded high.  For example, to load VMiX high you might
  154.    first start the low memory copy with the command:
  155.  
  156.          C:VMiX> vm_boot ems=ffff/loadup vm_boot set baud -c1 2400
  157.  
  158.    the 'set baud' command will now be executed by the loaded high copy
  159.    of VMiX.
  160.  
  161.  
  162. VMiX Release 2.79 Notes
  163. -----------------------
  164.  
  165. 1. Multiple windows started within separate virtual full screens were not
  166.    working properly and got fixed.  The last column of a display row will
  167.    no longer be clipped.
  168.  
  169. 2. Reduced the time interrupts need to be disabled, which was affecting
  170.    reliable multitasking of communications programs.
  171.  
  172. 3. Fixed a bug with 'set video -s' which caused extraneous cursors to flash
  173.    on the screen when the status line was enabled and other tasks were
  174.    active.
  175.  
  176. 4. Added the new command 'set process -q ????', where ???? is a number
  177.    between 0 and 255 representing the number of timer tick counts MINUS ONE
  178.    that a task can block other tasks in the READY queue because its priority
  179.    is constantly been increased by the VMiX preemptive scheduling mechanisms.
  180.    This keeps tasks running interrupt intensive programs (like communications
  181.    programs) from blocking totally other tasks.
  182.  
  183.    The default setting is 175, resulting in a maximum blocked delay for other
  184.    tasks wanting a time slice of (176 * 11msec.) 1.9 seconds.
  185.  
  186.    A 2400 baud program will receive interrupts about every 3msec., causing
  187.    each time an increase of its priority by 2.  The scheduler runs every
  188.    11msec., thus finding the priority of that task higher by 6 and usually
  189.    higher than other tasks, so without the contention timer described above,
  190.    the current task could hog the system and not give other tasks a time
  191.    slice.
  192.  
  193. 5. VT.EXE will now support the IBM Function Keys automatically, without the
  194.    need to press <Ctrl> <F> to toggle emulation (See Table, below).  You
  195.    still need to toggle IBM Keyboard Key Emulation ON, when connecting with
  196.    another manufacturer's communication program.  Fixed inability of VT.EXE
  197.    to connect with a remote VMiX host at baud rates above 9600 baud.
  198.  
  199.    Fixed a bug when using VT in one session and a switch to a second task
  200.    was perfomed, keyboard input could cause the system to hang.
  201.  
  202. 6. Fixed backspace from a remote session, which was not erasing the first
  203.    character on a line.  Fixed a bug with remote ANSI color not setting the
  204.    'rshell' screen to the correct color.  Fixed a remotely commanded
  205.    'set video -m3', which was homing the cursor at the console screen.
  206.  
  207.  
  208. VMiX Release 2.78 Notes
  209. -----------------------
  210.  
  211. 1. Fixed bugs with the new communications support and fossil type
  212.    BBS drivers.  If 'set remote -i' is toggled TRUE, (type 'set remote' to
  213.    determine the current status), then the scheduler algorithm will be
  214.    modified to prevent a task to be locked-out because another is constantly
  215.    receiving COMM interrupts and preempting it.
  216.  
  217. 2. Added the new command 'init clock' to reset the system clock back to
  218.    what VMiX expects.  Some applications may attempt to capture the system
  219.    clock, this is handled by VMiX, but if the clock 8254 timer channel is
  220.    reprogramed by the application back to 55msec, this will make the
  221.    DOS clock slow down to 1/5 its normal rate.  Use 'init clock' to restore
  222.    the clock back to its normal VMiX speed of 11msec.
  223.  
  224. 3. MONITOR.EXE has been updated to monitor/edit logical address space memory
  225.    contents belonging to other VM tasks running in 386 mode.  The CS, IP,
  226.    Flags registers now display correct data in 386 mode.
  227.  
  228. 4. Each task now saves/protects its own DOS driver request header.
  229.  
  230. 5. On 24 line terminals, setting terminal type 5, ANSI, will cause the
  231.    display to be truncated at 24 lines (line 25 will be overlayed).
  232.    Setting other terminal types, will allow the scroll at the end of
  233.    screen, by applications that expect a 25 line console or scroll the
  234.    screen by positioning beyond line 25.
  235.  
  236.  
  237. VMiX Release 2.77 Notes
  238. -----------------------
  239.  
  240. 1. VMiX now supports programs that use the extended keyboard BIOS interface.
  241.    Some new programs were not responding to the keyboard, from either the
  242.    console or a terminal.
  243.  
  244. 2. Fixed a bug that would halt the system when you quit VMiX, after it
  245.    had been relocated to upper memory, away from the DOS 640Kb area.
  246.  
  247. 3. Fixed a 386 Mode only bug, that would cause the kill command to be
  248.    ineffective.
  249.  
  250. 4. Added context sensitive interrupt processing to the kernel.
  251.    This is a new capability.
  252.  
  253.    Interrupt request lines IRQ3 and IRQ4 (serial COMM ports) are currently
  254.    supported, but IRQ2 and IRQ5 are not.  The unsupported lines are normally
  255.    used by network adapters.  Network adapter software should still be
  256.    installed before VMiX starts, so that their drivers are available to all
  257.    virtual DOS tasks.
  258.  
  259.    Previously, if you were running a task or window in a virtual 386 DOS
  260.    partition and started a communications program inside that partition,
  261.    which installs its OWN interrupt service routines, the program or the
  262.    system could hang.  The reason for this was that while the serial port
  263.    interrupts can occur at any time, the communication program's virtual
  264.    machine might not be mapped (running) at the time of the interrupt.
  265.    This would not affect programs which use a serial port driver that was
  266.    globally installed before VMiX is started, but programs like Procomm or
  267.    Telix, that load the driver at runtime.  This problem will no longer
  268.    occurr with this new version.
  269.  
  270.    To enable context sensitive interrupts, you should invoke the command
  271.    'set remote -i' if the baud rate is lower then 19.2 KBaud, to toggle
  272.    ON special interrupt servicing.  If you use the 'set baud -c ....',
  273.    to set a Baud rate above 9600, then context sensitive communications
  274.    are automatically enabled.
  275.  
  276.    IF YOU INTEND TO RUN COMMUNICATIONS PROGRAMS, start VMiX with the
  277.    options given below (you do not want to allow logins at the COMM port
  278.    that is to be used for communications):
  279.  
  280.    C:\VMiX> VM_BOOT set remote -x/set remote -i  (disable all COMM logins)
  281.  
  282.    or,
  283.  
  284.    C:\VMiX> VM_BOOT set remote -l4/set remote -i     (logins only at COM4)
  285.  
  286.    or,
  287.  
  288.    C:\VMiX> VM_BOOT set remote -i           (logins only at COM1, default)
  289.  
  290. 5. Remote ANSI users will now be able to get color screen displays from
  291.    applications running in the host, but being displayed remotely.
  292.    Fixed a bug that resulted in sudden scrolling of the remote display
  293.    screen.
  294.  
  295.    Color support slows the screen display somewhat.  If you want the
  296.    speed but not the color, select VMiX VT-100 emulation with the command
  297.    'set terminal -t4' and leave the remote terminal set for ANSI emulation.
  298.  
  299.    The virtual screen redirection to the COMM ports has been speeded up
  300.    considerable.  Only those portions of the screen that have changed since
  301.    the last refresh are now sent via the serial port to the remote terminal
  302.    running the application.
  303.  
  304. 6. The remote communications program VT.EXE, which links two computers
  305.    running VMiX, has been upgraded.
  306.  
  307. 7. The pull-down menus shell VW.EXE now allows the setting of COMM port
  308.    baud rates.
  309.  
  310.  
  311. VMiX Release 2.70 Notes
  312. -----------------------
  313.  
  314. 1. Fixed a bug that made 3 1/2 floppy drives 1.44 Meg. unreadable after
  315.    VMiX started.
  316.  
  317. 2. Improved MS-DOS reentrancy, which makes VMiX less likely to hang as
  318.    a result of MS-DOS (INT 21h) conflicts.
  319.  
  320. 3. Added VMiX support for DRDOS and XDOS operating systems.  DRDOS still
  321.    does not pass our full stress test, but seems to work much better than
  322.    before.  Because of differences between DRDOS and MSDOS, it is not
  323.    possible for VMiX to display a prompt showing the current default
  324.    directory.
  325.  
  326.    Specifically, the architecture of DRDOS does not allow different tasks
  327.    to have different default directories.  This will cause problems if you
  328.    set different default directories for different VMiX partitions.  The
  329.    only way around this is to set an all inclusive PATH statement before
  330.    starting VMiX (and also set an identical path for data files using the
  331.    VMiX utility DPATH, after start-up).  
  332.  
  333. 4. The LOADUP.EXE utility is now able to relocate VMiX to upper memory,
  334.    in 386 computers.  If your system has unused space between the
  335.    video rom and the system rom, VMiX will fit there.  This reduces
  336.    the DOS footprint of VMiX to only 38Kb, which will allow larger
  337.    programs to fit in virtual memory partitions.
  338.  
  339.    To load VMiX high you must first have started a copy of VM_BOOT in
  340.    your 386 computer with the startup parameter EMS=FFFF, so that the
  341.    first copy of VMiX will not try to initialize EMS memory in the target
  342.    upper memory area.
  343.  
  344.    Sample command line to load VMiX to upper memory:
  345.  
  346.            VM_BOOT ems=ffff/loadup vm_boot
  347.  
  348.    Wait until the first copy of VMiX has shutdown and the new upper memory
  349.    copy has started.  The entire process is automatic.
  350.  
  351.    When quiting out of the upper memory copy of VMiX, the DOS system must
  352.    currently be halted, requiring a system reset after VMiX terminates.
  353.  
  354. 5. If your system has more than 1 Meg. of extended memory, VMiX will now
  355.    automatically use large video buffers (which allows graphics apps to
  356.    coexist with text mode apps and other full screen graphics apps).
  357.  
  358.    Previously, you had to set the parent shell to graphics mode with the
  359.    'set video -m' command and then start a new 'dosjob' which would then
  360.    use large video buffers.  Alternatively, you could also start a new
  361.    shell with 'dosjob -W /rshell' and then set the video mode to graphics
  362.    befor starting the graphics application.  You still have to do this,
  363.    when starting applications that run in graphics mode, if your system
  364.    has only 1 Meg. of extended memory.
  365.  
  366. 6. Added the command 'set process -t ????', where ???? is a number equal
  367.    to 0 or above representing number of timer tick counts MINUS ONE, that
  368.    a process will execute uninterrupted.  This differs from the command
  369.    'set system -d ????' which repesent the interval (ticks - 1) before
  370.    the scheduler briefly takes control to see if a new process is ready
  371.    to be given a control of the CPU (for a time period equal to one tick
  372.    more than that specified with the command 'set process -t').
  373.  
  374. 7. Hopefully fixed a bug which caused VM_BOOT not to detect upper memory
  375.    in use, resulting in a crash, unless VMiX was started with the ems=ffff
  376.    system startup option.
  377.  
  378. 8. VMiX now can make use of up to 4 Meg. of extended memory.  Previously
  379.    a maximum of 3 Meg. was actually used.  If your system has 8 Meg. of
  380.    extended memory, you can use the system startup option exc=4000 to
  381.    exclude the first 4 Meg. for cache or something else.  Eight users
  382.    will not require more than 4 Meg. since the first two tasks (the
  383.    scheduler and the root shell) run in conventional memory.
  384.  
  385. 9. Because of all the problems other ANSI drivers can have with VMiX's
  386.    multiuser function, we are providing VMANSI.COM, a TSR that can be
  387.    executed before VMiX to install an ANSI driver.  This driver is still
  388.    being developed and currently does not support keyboard redefinition.
  389.  
  390.  
  391. VMiX Release 2.67 Notes
  392. -----------------------
  393.  
  394. 1. Added an optional, remote login access password system to control
  395.    access via the COMM ports.
  396.  
  397. 2. Added a very flexible configuration file, VMiX.INI, to assist in
  398.    configuring VMiX startup and specifying user programs to run upon
  399.    remote COMM port login.
  400.  
  401.    The new utility VSETUP.EXE will process the VMiX.INI file when it is
  402.    invoked in the vm_boot startup command line.  When used in the vm_boot
  403.    startup sequence, VSETUP will only process the lines given under
  404.    the [startup] Section in VMiX.INI
  405.  
  406.    The new utility VSETUP.EXE or any user program can also be specified
  407.    with the 'set remote -l' command.  In this case, VSETUP.EXE controls
  408.    password access and the startup of any program given in the
  409.    [remote startup] Section in VMiX.INI.  Invoking 'set remote -l'
  410.    without specifying VSETUP.EXE will reset logins to the standard access
  411.    method (rshell).
  412.  
  413. 3. Fixed an exit bug that caused available memory to be truncated after
  414.    running and quiting from VM_BOOT.EXE
  415.  
  416. 4. VMiX now drops the modem carrier when a program or login that uses
  417.    a channel to one of the COMM ports terminates.
  418.  
  419. 5. VW.EXE and VSETUP.EXE will make use of your DOS PATH to find other
  420.    utilities that VW dispatches or the VMiX.INI data file.  However,
  421.    they will also search the full filespec path you typed when starting
  422.    VM_BOOT.EXE, regardless of the current path settings.
  423.  
  424. 6. Fixed a bug with the software cursor, in graphics modes poping up in
  425.    strange places.
  426.  
  427. 7. Change the way we reflect to COMM port interrupts in virtual 386 Mode.
  428.    The scheduler is now disabled during the entire interrupt service.
  429.    Fixed a bug that would not allow more than one COMM port to be used
  430.    at once for remote logins.
  431.  
  432. 8. Added the 'set process -d ????' command to allow a script to specify
  433.    a wait interval, in seconds.  (Mostly for purposes of VMiX.INI scripts.)
  434.  
  435.  
  436. VMiX Release 2.66 Notes
  437. -----------------------
  438. 1. Fixed a hang problem with the 'VM_BOOT 8086' startup sequence, when
  439.    starting in 8086 Mode on 286/386/486 systems.
  440.  
  441. 2. Remote logins will now work at the high (interrupt driven) baud rates
  442.    above 9600 baud.  High baud rates are set for a given channel, just
  443.    as the standard rates, with the 'set baud -c ???? <baud rate>' or with
  444.    'init comm -c ???? <baud rate>'.  Available baud rates are: 300, 1200,
  445.    2400, 4800, 9600, 19200, 38400, and 115200.  The VMiX utility DSTAT.EXE
  446.    will now display the baud rate settings for all channels assigned to
  447.    COMM ports.
  448.  
  449.  
  450. VMiX Release 2.64 Notes
  451. -----------------------
  452. 1. Fixed a DOS 5.0 bug which caused the system to hang on exit from VMiX.
  453.  
  454. 2. Fixed bug with auto screen windowing, when three windows already existed.
  455.  
  456. 3. The 286/386 coded version will now print error message and exit when
  457.    it detects an 8088 or 8086 cpu.
  458.  
  459. 4. Fixed bug with uppercase 'H', 'P', 'K', and 'M' not being displayed.
  460.  
  461. 5. Fixed bug with the 286 Mode 'swap' command which would cause the system
  462.    to hang.
  463.  
  464. 6. The status line now displays the full name of the current foreground
  465.    process.
  466.  
  467. 7. On exit from VMiX, free DOS memory is now fully reconstructed, to avoid
  468.    loss of memory sometimes caused by the 'swap' command.  An 'exec -m1024'
  469.    will also reconstruct DOS memory.
  470.  
  471. 8. Fixed the problem of the cursor bleeding through, between virtualized
  472.    screens, causing random bleeps on the foreground screen.
  473.  
  474. 9. Added a check to ensure that the first available memory arena starts
  475.    at a 4Kb boundary.  Sometimes the alignment failed resulting in
  476.    memory allocation fault error message and crash.
  477.  
  478. 10.Added a (L)aunch application option to the VW.EXE utility to allow the
  479.    user to launch an application directly, instead of starting a shell for
  480.    it first and then invoking the application.  The application (L)aunch
  481.    option resides in the (P)rograms menu.
  482.  
  483. 11.When you exhaust extended memory, VMiX now gracefully switches the
  484.    new task to use the parent's memory and prints an insufficient memory
  485.    error message.
  486.  
  487. 12.Changed the menu names used by VW to be more explanatory.  (F)ree Extended
  488.    Memory was not working correctly.
  489.  
  490. 13.Fixed a PATH command bug causing virtual memory not to be released.
  491.    Other bugs caused the path to be inserted incorrectly in the environment.
  492.  
  493. 14.Moving the console to a remote port was not working correctly (ie., 'set
  494.    remote -c ????').
  495.  
  496. 15.The default terminal type has been changed to be type 5, an ANSI terminal
  497.    or VT-100 terminal.
  498.  
  499. 16.Fixed bug with COMSPEC not being found in environment during new task
  500.    dispatch.  This resulted in nothing executed and a help screen being
  501.    displayed, instead.
  502.  
  503. 17.Added 386 protected mode support for coprocessor instructions.  This
  504.    caused some applications to hang when executed in 386 Mode.
  505.  
  506. 18.Added support for virtualized default directories.  Each task now has
  507.    its own default directory, independent of what others have.  Previously
  508.    only default drives were virtualized.
  509.  
  510.  
  511. VMiX Release 2.61 Notes
  512. -----------------------
  513. 1. Added support for DOS 5.O load of COMMAND.COM and BUFFERS to HMA area.
  514.    VMiX patches DOS's XMS manager to disallow disabling of the gate 20
  515.    address line, so HMA is always addressable.
  516.  
  517. 2. Video memory is no longer cleared when a Shift-Tab causes a switch
  518.    between tasks in different video modes.
  519.  
  520. 3. Increased to 4 Megabytes the amount of memory VMiX will recognize
  521.    (previously it used only 3 Megabytes, even if it found more).
  522.  
  523. 4. Changes to the SYSGATE.ASM programming interface (see file).
  524.  
  525. 5. Added interrupt driven services to the COMM ports, under VMiX.
  526.    Added support for 115.2 Kbaud (When 'set remote -i' is TRUE, 110 baud
  527.    becomes 19.2 Kbaud, 150 baud becomes 38.4 Kbaud and 600 baud becomes
  528.    115.2 Kbaud).  To set 115.2 Kbaud you would use 'set baud -c1 600'.
  529.  
  530. 6. Added the VT.EXE utility for linking two VMiX hosts serially with
  531.    a virtual terminal session.
  532.  
  533. 7. Programs that make direct video  writes are now supported at remote
  534.    COMM port terminals (remote logins).  All video memory accesses will
  535.    be redirected to the COMM port and will not appear at the console.
  536.  
  537. 8. Fixed a bug with stack deallocation after process termination.
  538.  
  539. 9. Added DOS 5.0 style support for upper memory blocks.
  540.    Added the LOADUP.EXE utility to allow user loading of TSRs to upper
  541.    memory (386 Mode required).  TSR is visible only to process that
  542.    started it, since each VMiX task is virtually mapped to a separate
  543.    virtual first megabyte.  This means that you can have different
  544.    (or the same) TSRs active for each partition. 
  545.  
  546. 10.Fixed a bug with the 'exclude=' command line option; it was not really
  547.    leaving the HMA area unused and causing conflict crashes.
  548.  
  549. 11.Added an alternate way to start new tasks multitasking.  Pressing
  550.    Shift-Enter or Shift-Shift-Enter, will start a new task, just as if
  551.    you had typed 'dosjob'.  The Shift-Enter is used, instead of just the
  552.    Enter key, after typing a command.  If both Shift toggles are pressed
  553.    when the Enter key is hit, the new task will use the full screen.  If
  554.    only one Shift is held down, the task will start in a new window.
  555.  
  556. 12.Fixed the VMiX hang problem when the DSR line is not enabled at a COMM
  557.    port being used for logins.
  558.  
  559. 13.Changes to VW pull-down menus style.
  560.  
  561. 14.VMiX now detects if another 386 virtual memory manager is present, and
  562.    rather than crashing it switches to 8086 Mode.
  563.  
  564.  
  565. VMiX Release 2.58 Notes
  566. -----------------------
  567. 1. VMiX uses an underline character as a 'mark the spot' cursor to show
  568.    where the cursor was in a non-foreground task, when the user toggles
  569.    to another window with the hot key.  To allow users that use a voice
  570.    synthesizer to echo the characters displayed by BIOS, without the
  571.    anoying underline character being echoed, the cursor display is now
  572.    performed without using the BIOS call.
  573.  
  574. 2. Fixed a memory manager bug with the paged memory allocation scheme.
  575.    Fixed a BitBlt bug when using system font 2 with graphics modes,
  576.    which hung a task executing a memory map display ('monitor -m').
  577.    Fixed a bug with backspace, when using the command line in graphics
  578.    modes, not erasing the software cursor.
  579.  
  580. 3. Automatic windows are now virtualized.  In 386 Mode, each foreground
  581.    can be partitioned into windows, independently from other full screen
  582.    foregrounds. 
  583.  
  584. 4. When extended memory is exhausted, a new child process inherits the
  585.    program space and virtual screen of the parent.
  586.  
  587. 5. Reduced time interrupts are disabled in INT 10 and 16.
  588.  
  589. 6. Added VMIX support for HIMEM.SYS and other resident XMS drivers.
  590.  
  591. 7. Fixed a bug that did not allow the previous command to be recalled
  592.    when up-arrow pressed in graphics modes.
  593.  
  594.  
  595. VMiX Release 2.57 Notes
  596. -----------------------
  597. 1. Added the 'set remote -a' command to allow all COMM port to be polled
  598.    simultaneously for user login requests.  This command slows down the
  599.    scheduler, interrupts are not disabled during polling.
  600.  
  601. 2. Added the 'set process -w ????' command, where ???? is the number of
  602.    idle input or output cycles before a process is put to sleep.  If this
  603.    parameter is set to 0, then all processes are always being timesliced.
  604.    With programs that grab the keyboard, like Windows, this will allow
  605.    the VMiX hot key Shift-Tab to be recognized, since there will always be
  606.    a non-windows process awake to field the hot key.  This command is
  607.    only used with non-386 computers, since in the 386, the VMiX protected
  608.    mode supervisor is always running to detect the hot key.
  609.  
  610. 3. VM_BOOT had stopped working in 8086/8088 PCs when invoked without
  611.    the 8086 command line parameter.  This has been fixed.
  612.  
  613. 4. Conversion to C++ is proceeding.  It now compiles with TCP.
  614.  
  615. 5. VGA graphics modes (640 x 480) are now supported.  Fixed bugs with
  616.    graphics switching.  Fixed bugs with status line display in graphics
  617.    modes.
  618.  
  619. 6. VW.EXE was behaving different, if invoked from the command line as
  620.    opposed to from the VMiX shell.  The keyboard will now relocate to
  621.    any new process started from VW, by default (no need to press the
  622.    hot key).
  623.  
  624. 7. We are now virtualizing the DMA buffer maintained by DOS.
  625.  
  626. 8. On 386 ATs, VMiX will now setup its low memory paged pool in a 32Kb
  627.    EMS segement, between C000 and F000, if it finds one that it can use.
  628.    This frees the memory for DOS use.  On 8086 PCs or 286 ATs with EMS,
  629.    you can manually request this from the startup command line by
  630.    specifying an available 32Kb EMS segment with 'EMS='.
  631.  
  632. 9. Made some fixes to the cursor ON/OFF algorithms that manage the
  633.    cursor between tasks and task switches.  Note that an inactive task,
  634.    eventhough it is the foreground task (via Shift-Tab hot key), will
  635.    not have a timeslice during which to activate its cursor.
  636.    To compensate for this, turn-on cursor emulation with 'set sys -c'.
  637.  
  638. 10.The MONITOR.EXE utility now allows viewing and edit of memory areas.
  639.    Press 'M' after 'monitor -r1' has been invoked, to test this.  The
  640.    address format is: segment[:offset] [= byte], where the '= byte' is
  641.    optional, for example
  642.  
  643.              hex address? 550A             displays segment 550A:0
  644.              hex address? 550A:100         displays segment 550A:100
  645.              hex address? 550A:100 = FF    sets byte at 550A:100 to FF
  646.  
  647.    The 'examine memory' command does the equivalent from the VMiX shell.
  648.  
  649.    Added the -f switch to MONITOR.EXE.   When invoked with 'monitor -f',
  650.    all open files on a VMiX system will be globally monitored.  Open files
  651.    will be listed and revised until the <Esc> key is pressed,
  652.  
  653.  
  654. VMiX Release 2.56 Notes
  655. -----------------------
  656. 1. VMiX now handles swapping video modes between graphics and text in
  657.    386 computers.  The hot-key <Shift><Tab> will switch the console between
  658.    tasks running in graphics modes and those running in text mode.
  659.    VW (Process Menu) will allow new shells to be started in the video mode
  660.    of your choice (and/or video page of choice in Text Mode).  The same
  661.    can be accomplished from the command line with:
  662.  
  663.                           'do -W /set video -m/rshell'  (for mode select)
  664.    or,
  665.                           'do -W /set video -p/rshell'  (for page select)
  666.  
  667.    Video mode switching will work in non-386 computers but the previous
  668.    mode screen contents will not be saved.
  669.  
  670. 2. VMiX now provides a software emulation cursor.  The software emulated
  671.    cursor is toggled by the command 'set system -c', the default setting
  672.    is disabled (because of the overhead during multitasking).  If you have
  673.    trouble determining on which window the keyboard focus lies, use this
  674.    option to enable cursor emulation.
  675.  
  676. 3. The 'set remote -e' command has been changed to 'set remote -x'.
  677.    This command controls the enabling or disabling of remote logins.
  678.    Logins are enabled by default (on COM1).
  679.  
  680.  
  681. VMiX Release 2.52 Notes
  682. -----------------------
  683. 1. Added the 'set video -p' command to allow video pages to be selected.
  684.    Main benefit is, in non-386 computers, it allows a 'do -W /set video
  685.    -p1/rshell' to be used to start and a new shell with a different video
  686.    page assigned.  The Shift-Tab hot key will switch video pages (or video
  687.    modes), giving some level of screen virtualization between tasks.
  688.    Use not recommended in 386 Mode, because of true virtualization of video
  689.    memory.  VW.EXE now asks for a video page when starting a new VMiX shell
  690.    or DOS shell (use only page 0, when in 386 Mode).  VW will respond
  691.    to the [Home] key by repainting the menu bar.
  692.  
  693. 2. The MONITOR.EXE utility now allows viewing and edit of memory areas.
  694.    Press 'M' after 'monitor -r1' has been invoked, to test this.  The
  695.    address format is: segment[:offset] [= byte], where the '= byte' is
  696.    optional. (ie., hex address? 550A, hex address? 550A:100, or
  697.    hex address? 550A:100 = FF)  The 'examine memory' VMiX command does
  698.    the equivalent in the registered version of VMiX.
  699.  
  700. 3. Fixed the 'kill' command hanging VMiX in protected mode.
  701.  
  702. 4. Added new delay timer routine.  INT 08 real time clock is now reprog-
  703.    ramed after '$$' tasks quit.  BASICA, GWBASIC are automatic '$$' protected
  704.    tasks, they were the main culprits in changing the timer back to 18.2
  705.    ticks per second. 
  706.  
  707. 5. Channel 5 is now automatically assigned to LPT1 on bootup.  Try 'spawn
  708.    -c5 type c:\autoexec.bat' to test LPT1.
  709.  
  710. 6. All segment or offset references to VMiX commands ('set pool', 'examine
  711.    memory') must now be entered in HEX without a preceeding '0x' (prevously
  712.    required).  When using 'set video -c' to specify combined foreground and
  713.    background colors you may still use '0x', only when entering HEX bytes.
  714.  
  715. 7. Keypad arrow keys now work from a remotely logged pc with VT-100 terminal
  716.    software, provided you toggle emulation by pressing <Ctrl> <F>.
  717.  
  718. 8. Added color to EGA graphics modes.
  719.  
  720.  
  721. VMiX Release 2.51 Notes
  722. -----------------------
  723. 1. Fixed a bug that kept VMiX 2.50 from working on 8086 computers.
  724.  
  725. 2. Changed compilers to MSC 6.0, started conversion to Zortech C++.
  726.  
  727. 3. Fixed some problems with the way VMiX virtualizes the keyboard.  VMiX is
  728.    now compatible with 'Remote Console'tm a product of Louis Wheeler.
  729.    Increased the amount of video memory virtualized in 386 Mode to 2 pages.
  730.  
  731. 4. Added the -i option to the VW.EXE command line.  This option sets VW in
  732.    interactive mode, so that it will not be swapped out when there is no
  733.    keyboard activity.
  734.  
  735. 5. 'set remote -e', to control COMM port logins, can now be used from the
  736.    VM_BOOT command line.
  737.  
  738. 6. The arrow keys on a PC acting like a terminal and connected to a VMiX
  739.    host will now work correctlly when in VT-100 emulation mode.
  740.  
  741. 7. Added Registration printing banner to startup screen.
  742.  
  743.  
  744. VMiX Release 2.50 Notes
  745. -----------------------
  746. 1. Fixed known crashiness bugs in previous version.  Improved the
  747.    reliability of the VW utility, which we can now recommend for regular
  748.    use.
  749.  
  750. 2. Added support for multiple default drives and made each task's default
  751.    drive independent from other windows/tasks.
  752.  
  753. 3. Added support for virtual video.  Eliminates bleed-through, when in
  754.    386 Mode, by applications that write directly to the screen in text mode.
  755.    Tasks started with the 'dosjob -W' command, and all tasks started at a
  756.    dumb terminal will execute with virtualized video segments in 386 Mode.
  757.    The Shift-Tab hot key will bring a virtualized task's video to the
  758.    foreground.
  759.  
  760. 4. Added a better command line parser and changed the syntax of the startup
  761.    system options:
  762.  
  763.    The new command syntax is:
  764.  
  765.                VM_BOOT [low] [high] [8086] [extended] [egacursor]
  766.                        [cgacursor] [ [ command ] /... ]
  767.  
  768.    where (note abbreviated syntax),
  769.  
  770.    the '8086'   option forces 8088 (real mode) operation on 286/386/486
  771.                 computers.
  772.    the 'ext'    option forces 80286 (real/protected mode) operation on
  773.                 386/486 cpu's.
  774.    the 'lo'     option inhibits relocation of VMiX code to extended memory.
  775.    the 'hi'     option forces relocation of VMiX code to extended memory when
  776.                 using 8086 Mode in a 286/386 or 486.
  777.    the 'egacur' option corrects a video BIOS bug that fails to indicate
  778.                 that CGA cursor emulation is disabled.
  779.    the 'cgacur' option corrects a video BIOS bug that fails to indicate
  780.                 that CGA cursor emulation is enabled.
  781.    [ command] / any valid DOS or VMiX shell commands, separated by a '/'
  782.  
  783. 5. Added scroll control to the help display.
  784.  
  785. 6. For shell usage compatibility, Escape now also clears the command line,
  786.    like a Ctrl C.  An <ENTER> on a blank line will not clear the previous
  787.    command buffer, which you can still repeat using up-arrow.
  788.  
  789.  
  790. 7. Logins at all comm ports can now be globally enabled/disabled with the
  791.    'set remote -e' command toggle.  The default is logins enabled.  You can
  792.    only use this command from the VMiX shell, it will be ignored when used in
  793.    the VM_BOOT command line.
  794.  
  795. 8. The VMiX debugger 'assign' command now accepts the PROCESS object type.
  796.    The purpose of the PROCESS assign is to redirect the STDIO (screen and
  797.    keyboard) of a process to a new channel.  You can move a process using
  798.    the console to a COMM port terminal or to a printer CHRSINK type of
  799.    channel.
  800.  
  801. 9. Fixed a bug with modem control and data set ready detection.
  802.  
  803.  
  804. VMiX Release 2.31 Notes
  805. -----------------------
  806. 1. Fixed some regression bugs introduced in version 2.30, including a
  807.    bug which did not allow a 'dosjob' command to be executed from the
  808.    command line when starting VMiX (the VMiX.DOC tests fail).  Fixed
  809.    a bug that did not allow 286 AT's to run with SWAP to extended memory.
  810.  
  811. 2. Fixed a bug that sometimes did not allow a command line 'SPAWN'
  812.    to work correctly (for example, starting VMiX with:
  813.    VM_BOOT set remote -l2 / spawn -c1 c:\filepath\myprog.exe
  814.    will now start myprog on COM1 and redirect new logins to COM2
  815.    without hanging the console).
  816.  
  817. 3. Fixed a bug which caused systems with monochrome (MDA) adapters to
  818.    lock up, since the MDA detection had failed.
  819.    Fixed the disappearing cursor bug on VGA's.  Note, some EGA/VGA's will
  820.    display what appears to be a broken VMiX cursor when Shift-Tab is
  821.    pressed to switch tasks.  To correct this, start VMiX with the command
  822.    line 'VM_BOOT cursor'.
  823.  
  824. 4. The VW menu shell is NOW COMPLETE and greatly improved.
  825.    VW.EXE can now be used to set screen colors from the options menu.
  826.    VW is a multiple thread environment (like OS/2), the slight delays
  827.    you will sometime experience when returning from a command are due
  828.    to process synchronization, this will improve in future versions.
  829.  
  830. 5. Upgraded the user shell with shadow boxes for messages and data.
  831.    Upgraded the user shell with limited command line edit capability.
  832.    Up-arrow recalls previous command, which can be edited.
  833.    Upgraded the API and programming information in SYSGATE.ASM
  834.  
  835. 6. On systems with EGA/VGA, an additional 96Kb of DOS program space is
  836.    now available (64Kb in monochrome mode).  To toggle the additional
  837.    program space ON/OFF, use the VMiX command 'set system -v'.  The
  838.    default is OFF, when VM_BOOT is executed.  This option will allow
  839.    large programs (566Kb maximum) to be executed with VMiX (the maximum
  840.    without this option is about 470Kb).  Eventhough VMiX uses extended
  841.    memory in 286/386 ATs/PS2s, the user partition size is limited by the
  842.    address space of DOS, which is now increasable to 736Kb.
  843.  
  844.  
  845. VMiX Release 2.25 Notes
  846. -----------------------
  847. 1. This is the first non BETA release of VMiX.
  848.    VMiX now works on the IBM PS/2 and COMPAQ 386 SX.
  849.  
  850. 2. VMiX now supports ESDI fixed disk systems.
  851.  
  852. 3. Made some more fixes related to DOS 4.01 multitasking.
  853.    Reduced resident memory size by 8 Kbytes.
  854.    The VMiX prompt now displays the current directory.
  855.  
  856. 4. In 386 Mode, the Shift-Tab key now works when MicroSoft Windows is
  857.    executing under VMiX.
  858.  
  859. 5. When a program executing as a VMiX task first uses a COMM port, the
  860.    port is automatically assigned to that process ID.  The port is only
  861.    deassigned when the VMiX task is 'quit', not when the program terminates.
  862.    This allows the preemptive scheduler to service communications faster
  863.    by switching-in the owner program of a COMM port when I/O is detected.
  864.  
  865.  
  866. VMiX Release 2.22 Notes
  867. -----------------------
  868. 1. Fixed a major bug which caused VMiX to crash on any 386 AT with more
  869.    than 3 Megabytes of extended memory.
  870.  
  871. 2. Added code for IBM PS/2 support, but VMiX is still not fully working
  872.    on PS/2s.
  873.  
  874. 3. VMiX now relocates portions of its system code to extended memory.
  875.    More code will be moved in future releases, to allow larger DOS partition
  876.    sizes.  The VMiX startup program 'VM_BOOT' has a new command line switch
  877.    that controls relocation of VMiX to extended memory.  Starting VMiX with
  878.    VM_BOOT -l (lower case 'L') will inhibit relocation of portions of VMiX
  879.    to extended memory.
  880.  
  881. 4. Fixed a bug with the 286 Mode 'swap' command, which had stopped working
  882.    correctly in the previous release.
  883.  
  884.  
  885. VMiX Release 2.21 Notes
  886. -----------------------
  887. 1. Fixed a bug that left the clock running fast, after exiting VMiX.
  888.  
  889. 2. The <Shift> <Tab> hot key will now swap screens between graphics mode
  890.    tasks and alphanumeric mode tasks.  Also, tasks using different video
  891.    pages will be switched correctly.  This affects only tasks that were
  892.    started with the 'dosjob -W' (full screen) command.  The hot key is
  893.    now handled by the event manager.
  894.  
  895.  
  896. VMiX Release 2.20 Notes
  897. -----------------------
  898. 1. More DOS 4.01 fixes.
  899.  
  900. 2. Communications support fixes in 80386 protected mode.  Higher baud rates
  901.    now supported.
  902.  
  903. 3. The VMiX clock tick has been changed from 55msec (18.2 task switches
  904.    per second) to 11msec (90.9 task switches per second).  A new command,
  905.    'set system -c ????' will allow you to tune your multitasking environ-
  906.    ment for maximum efficiency.  The command specifies the number of clock
  907.    ticks a running task is guarranteed to be active before preemption.
  908.    
  909.  
  910. VMiX Release 2.11 Notes
  911. -----------------------
  912. 1. 80386 Mode bug fixes.  Smaller process control block.
  913.  
  914. 2. The VMiX startup program 'VM_BOOT' has two new command line switches
  915.    that control the mode the program runs.  Using VM_BOOT -r, will force
  916.    VMiX into real (8086) mode and using VM_BOOT -x, will force VMiX into
  917.    extended (80286) mode.  These 2 command line switches, disable 80386
  918.    protected mode operations.  (Useful for getting around compatibility
  919.    problems, on certain computers.)
  920.  
  921. 3. Version 2.11 will operate with DOS 4.01.  Since DOS 4.01 can be set to
  922.    use extended memory, conflicts can arise.  VMiX must be told how much
  923.    extended memory other programs are using (see 'assign memory').
  924.     
  925.  
  926. VMiX Release 2.10 Notes
  927. -----------------------
  928. 1. VMiX 386 replaces the older 286 versions.  The new 386 version will
  929.    still work on 8088, 8086, and 80286 computers that are IBM PC or
  930.    AT compatible.  Version 2.10 executes in protected mode with extended
  931.    memory paging on 80386 processors.  This allows multiple DOS partitions,
  932.    each with about 450Kb free.
  933.  
  934. 2. Fixed a bug with channels assigned to a printer (CHRSINK type).  When
  935.    DOS console output was redirected to a task, with a CHRSINK type as its
  936.    STDIO, line feeds were not being printed.
  937.  
  938.           assign CHRSINK 1             (returns a channel ???? for LPT1)
  939.           spawn -c ???? type myfile.txt (performs redirection to LPT1)
  940.  
  941.    The above sequence of VMiX commands will now successfully redirect
  942.    the DOS 'type' command to LPT1:
  943.  
  944.    This method is recommended over 'exec type myfile.txt > PRN' when
  945.    multitasking.
  946.  
  947. 3. When using VMiX in 80386 Mode, the memory partition size is set auto-
  948.    matically to 512Kb, at boot time.  If you use the command 'exec -m' to
  949.    set a partition size less than 512Kb, VMiX will not request extended
  950.    memory for new task partitions until you issue 'exec -m512' again.
  951.    When the partition size is less than 512Kb, VMiX uses memory from the
  952.    parent process for the new task (same as 8088 and 80286 modes).
  953.  
  954.    If you have less than 512Kb of extended memory, the partition size must
  955.    still be 512Kb or more, in 80386's, VMiX will only use what is available.
  956.  
  957.    The default partition size for all other VMiX modes remains 224Kb.
  958.  
  959. 4. The new '?' command, lists the available VMiX shell commands.
  960.    The 'set dos -m' command has been removed, since the VMiX shell is
  961.    now always transparent to DOS commands.  DOS commands are passed
  962.    to 'command.com' and VMiX commands are passed to VMiX.
  963.    If the name of a VMiX command conflicts with a DOS command or file
  964.    name, the VMiX 'exec' command should preceed the DOS command, on the
  965.    same line.
  966.  
  967. 5. The new command 'examine status' displays information about a task,
  968.    including available memory.  Other memory status commands include
  969.    'examine mcb', 'monitor -m', and 'monitor -p'.
  970.  
  971.